/**
*  \file control_traction.c
*
*  \brief
*
*  \author Michael J. Hohmann  <michael.hohmann@linde-mh.de>
*
*
*/

/*===============================================[ private includes  ]================================================*/
#include "control_traction.h"
#include "../assertor/assertor.h"
#include "../pal/pal_mem.h"
#include "traction.h"
#define TRACTION_TORQUE_INVERT 1
/*===============================================[ private defines   ]================================================*/

/*===============================================[ private datatypes ]================================================*/

/*===============================================[ private variables ]================================================*/

/*===============================================[ private functions ]================================================*/

/*================================================[ inline functions ]================================================*/

/*================================================[ public functions ]================================================*/
RC control_traction_initialize( void )
{
   Traction_Init();
   return RC_SUCCESS;
}

/**
*
* \return Torque in [Nm]
*/
F32 control_traction_10ms(struct input_data_obj const * in, struct output_data_obj * out)
{

	Traction_Control_10ms();

 #if TRACTION_TORQUE_INVERT
	return Traction.Output.Torque_Out;
 #else
    return (Traction.Output.Torque_Out *(-1));
 #endif

}




/*===============================================[ private functions ]================================================*/


/***********************************************************************************************************************
*                             Copyright 2020 Linde Material Handling. All rights reserved.                             *
***********************************************************************************************************************/
